﻿namespace Example.Structural.Decorator
{
    using System.Globalization;

    public sealed class Mp3 : RecordingDecorator
    {
        public Mp3(IRecording component, 
                   string artist)
            : base(component)
        {
            Artist = artist;
        }

        public string Artist { get; private set; }

        public override string Recording
        {
            get
            {
                return string.Format(
                    CultureInfo.InvariantCulture, 
                    "{0} ({1})", 
                    base.Recording, 
                    Artist);
            }
        }
    }
}